package com.ruoyi.teacher.book.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 书籍对象 business_book
 * 
 * @author duanxinli
 * @date 2025-09-24
 */
public class Book extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 唯一标识 */
    private String id;

    /** 书籍名称 */
    @Excel(name = "书籍名称")
    private String bookName;

    /** 书籍封面 */
    @Excel(name = "书籍封面")
    private String bookCover;

    /** 编写单位 */
    @Excel(name = "编写单位")
    private String compile;

    /** 附件资料 */
    @Excel(name = "附件资料")
    private String fileUrl;

    /** 书籍简介 */
    @Excel(name = "书籍简介")
    private String introduction;

    /** 书籍详细介绍 */
    @Excel(name = "书籍详细介绍")
    private String content;

    /** 排序 */
    @Excel(name = "排序")
    private Long sort;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createDate;

    /** 修改时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "修改时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date updateDate;

    /** 是否删除，0正常，1删除 */
    private Long delFlag;

    public void setId(String id) 
    {
        this.id = id;
    }

    public String getId() 
    {
        return id;
    }
    public void setBookName(String bookName) 
    {
        this.bookName = bookName;
    }

    public String getBookName() 
    {
        return bookName;
    }
    public void setBookCover(String bookCover) 
    {
        this.bookCover = bookCover;
    }

    public String getBookCover() 
    {
        return bookCover;
    }
    public void setCompile(String compile) 
    {
        this.compile = compile;
    }

    public String getCompile() 
    {
        return compile;
    }
    public void setFileUrl(String fileUrl) 
    {
        this.fileUrl = fileUrl;
    }

    public String getFileUrl() 
    {
        return fileUrl;
    }
    public void setIntroduction(String introduction) 
    {
        this.introduction = introduction;
    }

    public String getIntroduction() 
    {
        return introduction;
    }
    public void setContent(String content) 
    {
        this.content = content;
    }

    public String getContent() 
    {
        return content;
    }
    public void setSort(Long sort) 
    {
        this.sort = sort;
    }

    public Long getSort() 
    {
        return sort;
    }
    public void setCreateDate(Date createDate) 
    {
        this.createDate = createDate;
    }

    public Date getCreateDate() 
    {
        return createDate;
    }
    public void setUpdateDate(Date updateDate) 
    {
        this.updateDate = updateDate;
    }

    public Date getUpdateDate() 
    {
        return updateDate;
    }
    public void setDelFlag(Long delFlag) 
    {
        this.delFlag = delFlag;
    }

    public Long getDelFlag() 
    {
        return delFlag;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("bookName", getBookName())
            .append("bookCover", getBookCover())
            .append("compile", getCompile())
            .append("fileUrl", getFileUrl())
            .append("introduction", getIntroduction())
            .append("content", getContent())
            .append("sort", getSort())
            .append("createBy", getCreateBy())
            .append("createDate", getCreateDate())
            .append("updateBy", getUpdateBy())
            .append("updateDate", getUpdateDate())
            .append("delFlag", getDelFlag())
            .toString();
    }
}
